1. The Field of the Invention
The present invention relates to networking technology. More specifically, the present invention relates to the concurrent resolution and certificate acquisition for a given recipient.
2. Background and Related Art
Computing and networking technology has transformed the way we work and play. Networks have become so prolific that a simple network-enabled computing system may communicate with any one of millions of other computing systems spread throughout the globe over a conglomeration of networks often referred to as the “Internet”. Such computing systems may include desktop, laptop, or tablet personal computers; Personal Digital Assistants (PDAs); telephones; or any other computer or device capable of communicating over a digital network.
In order to complete a transmission of a network message from one computing system to another, each computing system or corresponding user has an associated network or routing address. An example of a routing address is, for example, an e-mail address. In order to properly generate a network message that will be routed to the intended recipient, the network message will include the routing address corresponding to the intended recipient.
Due to the widespread interconnection of computing system and possibilities for their associated users to communicate, a user will often need assistance in order to find a routing address needed to deliver a network message to a desired recipient. One conventional help is to have display names associated with recipients. A display name may generally include text characters in any desired order, while a network address has text characters that tend to have a more restricted order. Accordingly, the display name may be expressed in a manner that is more intuitive to a human being. The user may select the display name as the intended recipient, while the network communication software automatically constructs the network message with the associated routing address.
Even with the use of display names, however, the user may still have difficulty finding a recipient. For example, in large organizations or personal contact lists, there may be multiple people with the same name. The display name may thus be similar for each of these various potential recipients. In order to find the appropriate recipients, many network communication packages incorporate ambiguous name resolution technology. This allows a user to enter a name that is different than, but is close to, the display name of the desired recipient. The user may then indicate that ambiguous name resolution is desired by, for example, selecting a “resolve names” function. The client then may search a local recipient database for recipient entries having similar corresponding display names. The user then selects the correct one of the resulting recipient entries. The associated routing address is then used as the destination address in the network message.
Alternatively, the client may transmit a resolution request to a server with the associated name to be resolved into a recipient entry. The server may search through an organizational or personal database to find one or more possible associated recipient entries. If only one possible associated recipient entry is found, the name is resolved, and the server downloads the associated recipient information (e.g., display name and/or routing address) to the client. If multiple possible associated recipient entries are found, then the server provides the potential matches to the client and allows the client to select which of the possible recipient entries is desired.
Over and above recipient resolution, it is sometimes desirable to ensure that the network message is transmitted in a secure fashion to the associated recipient. One way of securing the network message is to encrypt some or all of its contents. A computing system may use a certificate corresponding to the destination address to be sure the computing system encrypts the network message in a manner that may be decrypted at the destination computing system. Accordingly, the certificate corresponding to the destination computing system includes encryption information. In addition, the certificate includes validation information to allow the source computing system to determine that the certificate does indeed correspond to the destination computing system, and that the certificate has not expired and has not been revoked.
Conventionally, the recipient resolution and certificate acquisition operations are separate and distinct. Each is performed independently of the other. Nevertheless, what would be advantageous is a mechanism in which recipient resolution and certificate acquisition are performed in a manner that reduces network bandwidth and processor workload requirements.